package com.iov.car.domain;

import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import org.hibernate.validator.constraints.Length;

import java.util.List;

/**
 * 车辆信息对象 tb_carinfo
 * 
 * @author ruoyi
 * @date 2023-11-13
 */
public class TbCarinfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;
    /**
     * 车辆编号
     */
    private String carId;

    /** 车辆VIN */
    @Excel(name = "车辆VIN")
    @Length(min = 17,max = 17,message = "vin是17位")
    private String vin;

    /** 车辆类型 */
    @Excel(name = "车辆类型")
    private String carType;

    /** 电子围栏 */
    @Excel(name = "电子围栏")
    private String isFence;

    /** 车辆状态 */
    @Excel(name = "车辆状态")
    private String isStatus;

    /** 电机厂商 */
    @Excel(name = "电机厂商")
    private String machineId;

    /** 电池厂商 */
    @Excel(name = "电池厂商")
    private String batteryId;

    /** 电机编号 */
    @Excel(name = "电机编号")
    private String machineNum;

    /** 电池编号 */
    @Excel(name = "电池编号")
    private String batteryNum;


    private List<TbFence> fences;

    public void setId(Long id) 
    {
        this.id = id;
    }
    public Long getId() 
    {
        return id;
    }

    public void setCarId(String carId)
    {
        this.carId = carId;
    }
    public String getCarId()
    {
        return carId;
    }
    public void setVin(String vin)
    {
        this.vin = vin;
    }

    public String getVin() 
    {
        return vin;
    }
    public void setCarType(String carType) 
    {
        this.carType = carType;
    }

    public String getCarType() 
    {
        return carType;
    }
    public void setIsFence(String isFence) 
    {
        this.isFence = isFence;
    }

    public String getIsFence() 
    {
        return isFence;
    }
    public void setIsStatus(String isStatus) 
    {
        this.isStatus = isStatus;
    }

    public String getIsStatus() 
    {
        return isStatus;
    }
    public void setMachineId(String machineId) 
    {
        this.machineId = machineId;
    }

    public String getMachineId() 
    {
        return machineId;
    }
    public void setBatteryId(String batteryId) 
    {
        this.batteryId = batteryId;
    }

    public String getBatteryId() 
    {
        return batteryId;
    }
    public void setMachineNum(String machineNum) 
    {
        this.machineNum = machineNum;
    }

    public String getMachineNum() 
    {
        return machineNum;
    }
    public void setBatteryNum(String batteryNum) 
    {
        this.batteryNum = batteryNum;
    }

    public String getBatteryNum() 
    {
        return batteryNum;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
                .append("carId",getCarId())
            .append("vin", getVin())
            .append("carType", getCarType())
            .append("isFence", getIsFence())
            .append("isStatus", getIsStatus())
            .append("machineId", getMachineId())
            .append("batteryId", getBatteryId())
            .append("machineNum", getMachineNum())
            .append("batteryNum", getBatteryNum())
            .toString();
    }
}
